An Iterative Approach to Synthesize Data Transformation Programs
نویسندگان
چکیده
Programming-by-Example approaches allow users to transform data by simply entering the target data. However, current methods do not scale well to complicated examples, where there are many examples or the examples are long. In this paper, we present an approach that exploits the fact that users iteratively provide examples. It reuses the previous subprograms to improve the efficiency in generating new programs. We evaluated the approach with a variety of transformation scenarios. The results show that the approach significantly reduces the time used to generate the transformation programs, especially in complicated scenarios.
منابع مشابه
Sequential and Parallel Iteration in Logic Programs
Iterative programs are more elegant than their recursive counterparts for many problems and can be executed more eeciently than recursive programs run in the usual way on sequential computers. Moreover, they can often be executed with low overhead on parallel computers. We propose to employ bounded quantiications as an explicit iteration construct for Prolog programs and show that they do run e...
متن کاملCombining Model and Iterative Compilation for Program Performance Optimization
The performance gap for high performance applications has been widening over time. High level program transformations are critical to improve applications’ performance, many of which concern the determination of optimal values for transformation parameters, such as loop unrolling and blocking. Static approaches achieve these values based on analytical models that are hard to achieve because of ...
متن کاملDeveloping Reliable yet Flexible Software through If-Then Model Transformation Rules
Developing reliable yet flexible software is a hard problem. Although modeling methods enjoy a lot of advantages, the exclusive use of just one of them, in many cases, may not guarantee the development of reliable and flexible software. Formal modeling methods ensure reliability because they use a rigorous approach to software development. However, lack of knowledge and high cost practically fo...
متن کاملPopulation Management for Automatic Design of Algorithms through Evolution
The paper describes population based search in the system Automatic Design of Algorithms through Evolution (ADATE) that maintains chains of gradually bigger and better programs. The main challenge is to avoid missing links that lead to entrapment in too bad local optima. To avoid entrapment, the ADATE system employs iterative re-expansion of programs, population maintenance using a syntactic co...
متن کاملA Hybrid Meta-heuristic Approach to Cope with State Space Explosion in Model Checking Technique for Deadlock Freeness
Model checking is an automatic technique for software verification through which all reachable states are generated from an initial state to finding errors and desirable patterns. In the model checking approach, the behavior and structure of system should be modeled. Graph transformation system is a graphical formal modeling language to specify and model the system. However, modeling of large s...
متن کامل